package com.leenmvc.core.dao.communal;

import java.util.Map;

public interface WrapperFactory {

     <T> T getCountWrapper(Class<?> cls);

    <T> T getQueryWrapper(Class<?> cls);

    <T> T getQueryWrapper(Class<?> cls, Map<String,Object> params);

    <T, K> T getUpdateWrapper(K t);

    <T> T getUpdateWrapper(Class<?> cls);

    <T> T getUpdateWrapper(Class<?> cls, Map<String, Object> params);

    <T> T getDeleteWrapper(Class<?> cls);

    void closeWrapper(Wrapper wrapper);

    void closeWrapper(Wrapper wrapper, boolean threadLocalM);
}
